<template>

<div id="DataCluster"></div>
</template>

<script>

export default {

props:{

 fun:{

type:Function,

 },

title:{

type:String,

default:''

 }

 },

data(){ 

return {

width:document.body.clientWidth/3,
height:document.body.clientHeight/5

}

},
watch:{
 width(val){
   // 为了避免频繁触发resize函数导致页面卡顿，使用定时器
    if(!this.timer){
        // 一旦监听到的width值改变，就将其重新赋给data里的width
        this.width = val
        this.timer = true
        let that = this
        that.Chart()
        setTimeout(function(){
            // 打印width变化的值
            // eslint-disable-next-line no-console
            // console.log(that.width)
            that.timer = false
        },400)
    }
 },
 height(val){
    // 为了避免频繁触发resize函数导致页面卡顿，使用定时器
    if(!this.timer){
        // 一旦监听到的width值改变，就将其重新赋给data里的width
        this.width = val
        this.timer = true
        let that = this
        that.Chart()
        setTimeout(function(){
            // 打印width变化的值
            // eslint-disable-next-line no-console
            // console.log(that.width)
            that.timer = false
        },400)
    }
 }
},

components: {

},

computed: {

evenNumbers: function () {

return this.key.filter(function (number) {

return number % 3 === 0

})

}

},

beforeCreate:function (){

// 在实例初始化之后，数据观测 (data observer) 和 event/watcher 事件配置之前被调用。


 },

created:function (){

 // 在实例创建完成后被立即调用。在这一步，实例已完成以下的配置：数据观测 (data observer)，属性和方法的运算，watch/event 事件回调。然而，挂载阶段还没开始，el 属性目前尚不可用。


 },

 beforeMount:function (){

},
mounted(){

  window.onresize=()=>{
     this.width = document.body.clientWidth/3
     this.height =  document.body.clientHeight/5
  }


    this.Chart()
},
methods: {

// 在挂载开始之前被调用：相关的 render 函数首次被调用。

Chart(){
    // 基于准备好的dom，初始化echarts实例
// eslint-disable-next-line no-unused-vars
var myChart = this.echarts.init(document.getElementById('DataCluster'));
    //    this.autoHeight = myChart.length * 35 + 50; // counst.length为柱状图的条数，即数据长度。35为我给每个柱状图的高度，50为柱状图x轴内容的高度(大概的)。
          myChart.resize({height:this.height,width:this.width });
// 绘制图表
myChart.setOption({
   
       legend: {},
    tooltip: {},
     grid: {
        left: '0%',
        right: '0%',
        bottom: '0%',
        containLabel: true
    },
    dataset: {
        source: [
            ['product', '2015', '2016', '2017'],
            ['Matcha Latte', 43.3, 85.8, 93.7],
            ['Milk Tea', 83.1, 73.4, 55.1],
            ['Cheese Cocoa', 86.4, 65.2, 82.5],
            ['Walnut Brownie', 72.4, 53.9, 39.1]
        ]
    },
    xAxis: {type: 'category'},
    yAxis: {},
    // Declare several bar series, each will be mapped
    // to a column of dataset.source by default.
    series: [
        {type: 'bar'},
        {type: 'bar'},
        {type: 'bar'}
    ]
   
})
}

}

}

</script>

<style lang='scss' scope>
  #DataCluster {
     
      background-color: #fff;
  }
</style>
